package com.retail.order.mapper;

import com.retail.core.common.CommonMapper;
import com.retail.order.entity.request.SysAdminVerifyRequest;
import com.retail.order.entity.vo.SysAdminVerifyVo;
import com.retail.system.entity.vo.AdminIncomePersonVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;
import java.util.Map;

/**
* 用户核销单子 Mapper
* @author Administrator
*/
@Mapper
public interface SysAdminVerifyMapper extends CommonMapper<SysAdminVerifyRequest, SysAdminVerifyVo> {
    /**
     * 审核
     * @param id
     * @param examineVerify
     * @param examineVerifyRemark
     * @return
     */
    Integer verifyOrder(@Param("id") Long id, @Param("examineVerify") Integer examineVerify, @Param("examineVerifyRemark") String examineVerifyRemark);

    Integer tixianOrders(@Param("id") Long id, @Param("tixianFlag") Integer tixianFlag, @Param("tixianRemark") String tixianRemark);

    List<SysAdminVerifyVo> passVerifyStasticList(@Param("adminId") Long adminId);


    List<SysAdminVerifyVo> adminVerifyListStatus(@Param("adminId") Long adminId, @Param("examineVerify") Integer examineVerify);

    Integer realDeleteByAdminIdAndVerifyMonth(@Param("adminId") Long adminId, @Param("verifyMonth") String verifyMonth);


    Integer updatePriceByVerifyId(@Param("id") Long id);

    SysAdminVerifyVo getModelByAdminIdAndVerifyMonth(@Param("adminId") Long adminId, @Param("verifyMonth") String verifyMonth);

    SysAdminVerifyVo getModelByAdminIdAndVerifyYear(@Param("adminId") Long adminId,@Param("verifyYear") String verifyYear);

    Integer realDeleteById(@Param("id") Long id);

    List<SysAdminVerifyVo> getList(@Param("userId") Long userId);


    AdminIncomePersonVo statisticsIncomePerson(@Param("adminId") Long adminId);

    List<SysAdminVerifyVo> findVerifyList(@Param("verifyDate") String verifyDate, @Param("verifyType") Integer verifyType, @Param("examineVerify") Integer examineVerify, @Param("tixianFlag") Integer tixianFlag);

    SysAdminVerifyVo findAdminVerifyByAdminIDAndVerifyMonth(@Param("adminId") Long adminId, @Param("verifyMonth") String verifyMonth);

    SysAdminVerifyVo findAdminVerifyByAdminIDAndVerifyYear(@Param("adminId")Long adminId, @Param("verifyYear") String verifyYear);
}
